Numerous computer-based vision and image processing applications require the creation of disparity maps as part of extracting visual information for further processing. Such applications include stereo depth estimation, image enhancement, video stabilization, three-dimensional modeling, and human gesture decoding. Disparity maps may be used to identify visual data present in one image that is not present in another and/or to measure relative distances of objects from the location of the camera(s) taking the images.
Disparity maps are typically data structures made up of per-pixel indications of differences between two or more images. The two or more images are often captured by multiple cameras operated to substantially simultaneously capture separate images or a single camera operated to capture a succession of images separated by a recurring interval of time. The two or more images are then compared to find the disparities between them, and thereby generate one or more disparity maps. The disparity maps are then used to find corresponding regions between the compared images to identify like objects therebetween.
A time-honored technique of making such comparisons is to compare pixel intensities and record the differences in intensities between pixels of compared images as the pixels of a disparity map. Unfortunately, this reliance on pixel intensity renders this technique susceptible to inaccurate indications of disparities where two or more of the cameras used either are not or cannot be calibrated to provide substantially identical intensity measurements when capturing light of substantially the same intensity. This may arise due simply to normal variances in the manufacture of image sensors used in the cameras, and/or differences in environment between two image sensors (e.g., image sensors operating at different temperatures).
Further, even with correct calibration between multiple cameras or the use of the very same camera (such that calibration is not a factor) to capture each image, chance differences in lighting between different camera vantage points or over time through capturing successive images with the same camera can again bring about false differences in light intensities. The results are frequent false positives and/or negatives in detecting disparities. It is with respect to these and other considerations that the embodiments described herein are needed.